Tutoriel Zynthian Headless pour débutants (french)

Introduction
Voici un tutoriel pas à pas pour commencer simplement avec une Zynthian "headless" (acéphale pour les québécois ^^).

Il s'agit d'une Raspberry Pi avec le système d'exploitation ZynthianOS (un système linux dérivant de Raspberry Pi OS, lui-même variante de Debian) mais sans écran ni boutons ni potentiomètres. Tout peut être contrôlé à distance depuis un autre ordinateur, une tablette, un smartphone, une interface MIDI et/ou OSC. Dans la plupart des cas, les kits Zynthian avec écran et boutons sont la manière la plus efficace d'aborder ce système. Mais parfois, des versions headless sont très intéressantes, notamment pour la mise en réseau d'un grand nombre de Raspberry Pi.

Matériel

 * 1) Raspberry Pi (Pi3 possible mais Pi4 recommandée avec au moins 2Go de RAM / jusqu'à 8Go)
 * 2) Carte micro SD (class 10) (Avec adaptateur SD si besoin pour flasher la carte depuis son ordi. Dans ce cas, pensez à mettre le loquet vers le haut pour pouvoir écrire dessus)
 * 3) Alimentation (prenez l'officielle pour être sûr)
 * 4) DAC (carte son) I2S, par exemple de ce type avec son boitier.

ZynthianOS

 * 1) Téléchargez l'image de la dernière version stable de Zynthian OS
 * 2) Téléchargez Etcher
 * 3) Installez avec Etcher l'image ZynthianOS sur la carte SD

Connexion en Réseau

 * Le plus simple est de connecter directement la Raspberry Pi à votre ordinateur avec un câble ethernet.
 * Une autre manière est de les connecter tous les deux à un routeur (switch) ethernet.

Navigateur Web
Vous avez besoin d'un navigateur internet, mais ils ne fonctionnent pas tous.
 * Google Chrome semble marcher le mieux

Premier démarrage

 * 1) Mettez la carte SD dans la Raspberry Pi
 * 2) Allumez en branchant l'alimentation (il est recommandé d'utiliser une prise avec un interrupteur)
 * 3) Soyez patients le temps que le système se configure
 * 4) Ouvrez votre navigateur web
 * Sur MacOS, allez à l'adresse http://zynthian.local pour accéder au Zynthian WebConf Tool
 * Sur Windows, commencez par trouver l'adresse IP de votre Raspberry Pi, puis rentrez là dans le navigateur web pour accéder au Zynthian WebConf Tool

Si vous ne pouvez pas entrer dans le Zynthian WebConf Tool, attendez un peu plus que cela charge. Sinon, essayez de redémarrer en coupant le courant. Sinon, essayez de réinstaller la carte SD. Sinon, criez très fort. Sinon, demandez de l'aide sur le forum zynthian.

Configuration d'Internet
System / WIFI / Add Network Mode = ON
 * Si vous êtes connectés en réseau via un routeur Ethernet, connectez le sur votre box Ethernet
 * Si vous êtes directement connecté via un câble Ethernet entre la Raspberry Pi et votre Ordinateur, configurez le Wifi dans le WebConf :

Mise à jour de ZynthianOS
Maintenant que vous êtes sur Internet, vous pouvez mettre à jour ZynthianOS via le WebConf : [http://zynthian.local/sw-update Software / Update ] System / Reboot

Configuration du matériel
Configurez correctement votre matériel avec le WebConf : Hardware / Kit / Custom Hardware / Audio / Selectionnez votre carte son dans la liste Hardware / Display / Generic HDMI Display Hardware / Wiring / DUMMIES System / Reboot

Installation du serveur VNC sur la Raspberry Pi
VNC vous permet de charger en réseau l'interface graphique de la Raspberry Pi sur votre ordinateur, votre tablette ou votre smartphone. Pour installer VNC (ou d'autres logiciels) sur une Raspberry Pi, vous devez avoir accès au terminal :

System / Terminal
 * Option 1 : En utilisant le terminal du WebConf


 * Option 2 : via SSH (c'est-à-dire en utilisant le terminal de votre ordinateur)

- Sur MacOS, ouvrez le Terminal (dans Applications/Utilitaires) puis tapez (suivi de la touche entrée) : ssh zynthian.local Il vous sera tout d'abord demandé votre mot de passe administrateur, puis celui de la Zynthian (mdp = raspberry). Si vous voyez root@zynthian:~# vous êtes bien connecté au terminal de la Raspberry Pi.

Si ça ne marche pas, essayez : sudo ssh zynthian.local

Note : Sur MacOS, si vous avez eu besoin de réinstaller la carte SD, vous aurez probablement un message d'erreur “Host key verification failed” quand vous essayerez à nouveau de vous connecter via SSH. Vous devez alors effacer les anciennes données qui se trouvent dans le fichier ssh known_hosts. Pour cela, vous pouvez utiliser le terminal du mac et lancer cette commande : sudo nano /var/root/.ssh/known_hosts Dans l'éditeur de texte nano, vous pouvez alors effacer la ligne correspondant à zynthian (control K), puis sauvegarder (control O + enter), puis quitter (control X).

- Sur Windows, téléchargez PuTTy et faites la même chose que pour MacOS.

sudo apt install realvnc-vnc-server sudo raspi-config Interfacing Options / VNC / Yes
 * Quand vous êtes arrivés sur le terminal de la Raspberry Pi, lancez les commandes suivantes (à chaque fois suivies de la touche entrée) :

Si vous utilisez le terminal du WebConf, la visualisation n'est pas idéale. Il faudra donc attendre un moment après la commande de mise à jour (apt update), puis arriver jusqu'en bas pour continuer. Si vous ne voyez toujours rien au bout de quelques minutes, fermez le terminal et rouvrez le pour continuer et lancer l'installation de VNC.

Installation de VNC Viewer sur vos appareils
1. Téléchargez et installez VNC viewer sur vos appareils :
 * MacOS et Windows
 * iOS
 * Android

2. Connectez-vous à l'interface Zynthian UI via VNC : Vous devez être sur le même réseau (câble ethernet et/ou Wifi). Tapez l'adresse IP de la Raspberry Pi (si vous êtes sur Windows ou android) ou zynthian.local (sur MacOS and iOS) dans VNC Viewer. Sur une tablette, il faut aller dans "Address Book" puis cliquer sur le + (en haut à droite sur iOS, en bas à droite sur Android) pour rajouter la Zynthian. Nom d'utilisateur : root Mot de passe : raspberry

Vous devez normalement désormais avoir accès à l'interface graphique Zynthian UI en réseau.

Pour une utilisation optimum, configurez l'interface Zynthian pour une utilisation headless via le WebConf : [http://zynthian.local/ui-options Interface / UI options ] Advanced view : ON Enable Touch Widgets: ON Enable cursor: ON

Sur scène, vous pouvez vous déconnecter d'internet et configurer la Raspberry comme un émetteur Wifi afin d'y connecter vos appareils. Pour cela, allez dans le WebConf: System / WIFI / Hotspot

Note : sur Android, le système va automatiquement se connecter au réseau qui capte le mieux Internet. Il faut donc aller dans les paramètres et désactiver les options suivantes : “Auto Network Switch” (options avancées) et « connexion automatique » sur les réseaux déjà enregistrés. Cela peut nécessiter de redémarrer votre téléphone.

https://www.youtube.com/watch?v=4jb-8cQQQgQ
 * Voici un tutoriel vidéo de Benoit Bouchez en français concernant la prise en main de l'interface Zynthian UI :
 * Et bien sur le manuel !

Accéder aux interfaces graphiques des logiciels
Si vous voulez accéder depuis votre ordinateur aux interfaces graphiques des logiciels pour les programmer, par exemple pour Pure Data ou pour Pianoteq, vous devez installer sur votre ordinateur un serveur X11 :
 * Sur MacOS: Xquartz
 * Sur Windows: Xming

Une fois démarré, dans le terminal du serveur X11, vous pouvez envoyer cette commande : ssh -Y root@zynthian.local Lorsque vous créez un nouveau "layer" Pure Data ou Pianoteq dans l'interface Zynthian UI, le logiciel se lance graphiquement automatiquement sur votre écran (même s'il tourne toujours sur la Raspberry Pi).

Software / MOD-UI
 * A noter que l'interface graphique de Mod-UI (le pedal board virtuel) n'a pas besoin de X11 et se trouve simplement, une fois le "layer" créé, en page Web via le WebConf :

Accéder aux fichiers et aux dossiers de ZynthianOS
La meilleur manière de charger des patchs, des presets, des soundfonts etc. est via le WebConf (lisez le manuel). Mais dans certains cas, il est nécessaire d'accéder directement aux dossiers (peu recommandé pour les débutants). Vous pouvez le faire en SSH via le terminal si vous connaissez les commandes de base du shell UNIX. Mais si vous préférez y accéder graphiquement comme si vous étiez sur le gestionnaire de fichiers (finder ou explorer) de votre ordinateur, voici la procédure :

1. Installez un client SFPT sur votre ordinateur : 2. Ouvrez une connexion SFPT : Serveur : zynthian.local (MacOS) ou Adresse IP (Windows) Utilisateur : root Mot de passe : raspberry 3. Si, par exemple, vous voulez accéder au dossier avec les externals de Pure Data pour en installer manuellement, vous pouvez vous rendre ici et simplement glisser vos fichiers : /usr/lib/pd/extra
 * Sur MacOS: Cyberduck
 * Sur Windows: PuTTy